A storage device is generally configured to have random accessible non-volatile medium. The random accessible non-volatile medium is, for example, a magnetic disk drive, an optical disk drive and the like. Further, currently major storage device is configured to have a plurality of hard disk drives (HDD).
Further, accompanying a progress in semiconductor technology, a non-volatile semiconductor memory capable of being used as a memory medium of the storage device is being developed. As a drive using such non-volatile semiconductor memory as the memory medium, for example, a solid state drive (SSD) may be given. The storage device provided with the SSD is superior in duration life, electric power saving, and access time and the like, compared to the storage device provided with HDD only.
In the conventional storage device, a back-end interface and a plurality of the HDDs are, for example, connected by a Serial Attached SCSI (SAS) protocol. Further, an SSD provided with an SAS interface (SAS-SSD) is connected to the back-end interface.
Further, recently, a PCIe-connected SSD capable of performing faster data transfer is starting to appear.
In order to join the plurality of the PCIe-connected SSDs to the storage device, there is a form of connecting the PCIe-connected SSDs using a PCIe switch.
Since there is a limit to the number of PCIe-connected SSDs that could be joined with one PCIe switch, a large-scale system may adopt a configuration of connecting a number of PCIe switches in multiple stages.
In order to use the PCIe switches connected in multiple stages, and the PCIe-connected SSDs joined to the PCIe switches, an initialization of PCIe is necessary. An allocation of bus numbers is one of the initialization. The bus number is used, for example to specify a destination of data in an ID routing. The ID routing is one method of transferring data by determining a route to the designated destination, and transferring the data along the route.
For example, in Patent Document 1, there is disclosed a method of allocating bus numbers preliminarily to unconnected PCIe devices.